Operating system and method for controlling a powered vehicle

ABSTRACT

A system for the communication of data used in the operation of a vehicle comprises a plurality of controllers onboard the powered vehicle for controlling operations of the vehicle. At least one of the controllers has a memory in which data is stored and the data is accessible and used by at least two of the controllers for controlling vehicle operations. A communication link is provided between the at least two controllers for sharing data stored in the memory of one of the controllers to control operations of the powered vehicle.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of patent application Ser. No. 12/390,654, which was filed on 23 Feb. 2009, and the entire disclosure of which is incorporated herein by reference.

TECHNICAL FIELD

Embodiments of the subject matter disclosed herein relate to control of vehicles and access to databases having data relating to operation of vehicles.

BACKGROUND

Railroad companies operate trains and control railroad traffic on track systems that may include thousands of miles of railroad tracks. In order to control movement of trains on a track system, a track database is maintained that contains information relating to track topography, which is also referred to as the track profile data. The data stored in these databases includes, among other things, track grade data, track curvature data, and geographical coordinates or other data relative to the location of various points or segments of interest along the track, such as the location of wayside devices, changes in track grade, grade crossings, mile markers, signal locations, etc. Additionally, the track database may include data relative to one or more civil speed limits associated with various track sections. Sometimes the track database may have temporary speed restrictions that may he imposed as a result for example, of track repairs taking place on the track.

In use, the track database for a selected track or sections of track on which a train will be traveling is provided to an operator, who prepares a trip plan based on the information provided in the track database and information provided in a train manifest. A hard copy of the track database and train manifest is provided, which can take several hours to print. A hard copy of the track database and the train manifest may include several hundred pages, in part because the train manifest may provide information concerning all the railcars of a train that may be up to two miles long. In addition to the length of time required to create such a document, the document is cumbersome to handle and carry onboard the locomotive. The train operator uses the track database and manifest printout to verify that the onboard operating system of a locomotive includes track profile data and train manifest information upon Which the train operator shall rely to develop a trip plan. The operator, however, does not verify data entries. Instead, the operator simply performs a high level verification to determine if the operating system has track data for those tracks or sections of the track system the train will be traveling on.

The operator maps out a train route over the track sections provided based on past experience and/or operating manuals. The route will include the identity of the different tracks the train will travel on, the different speeds at which the train will travel along the track, and/or the different dynamic braking operations that may be needed during the trip. Given the track grade, and other parameters such as train weight and length, the operator is able to determine the locomotive throttle positions and braking commands necessary to achieve the different desired speeds on the track, and plans the trip accordingly. At times, the data found in these databases is not complete, has not been updated, or is simply incorrect or inaccurate.

Additionally, locomotives include onboard operating systems that may comprise one or more controllers that provide for the automated control of certain locomotive functions. Such systems may include fuel savings systems, positive train control systems, brake control systems, and operator coaching systems, which use elements of the track database for the automated control of locomotive operations. The manufacturers or vendors of such systems provide relevant components of the track database. Data conversion, human error, or other factors, however, may lead to incorrect or inaccurate data entry. Therefore, the locomotive may have different controllers using the same components of the track database. The data for each controller may be different, inconsistent with the data at other controllers, or otherwise not compatible with some controllers. In instances in which the track profile data is not correct, or the controllers of the onboard operating system are using inconsistent data, the train is not operating at optimal efficiency. Additionally, the use of incorrect or inaccurate data may result in an accident or train derailment.

BRIEF DESCRIPTION

An operating system, onboard a powered vehicle for controlling multiple operations of the powered vehicle, comprises a plurality of controllers onboard the powered vehicle for controlling operations of the vehicle. At least one of the controllers has a memory in which data is stored and the data is accessible and used by one or more of the other controllers for controlling vehicle operations. A communication link is provided between the controllers for sharing data stored in the memory of one of the controllers to control operations of the powered vehicle.

A method for controlling multiple operations of a powered vehicle comprises providing a plurality of controllers onboard the powered vehicle for controlling operations of the vehicle. At least one of the controllers has a memory in which data is stored and the data is accessible and used by one or more of the other controllers for controlling vehicle operations. There is also a step for transmitting signals indicative of the requested data in the memory from one controller to another controller to control operations of the powered vehicle.

In an embodiment, data associated with a train manifest and track profile is stored in an off-board station server or data storage device. An operator, on-board the vehicle, or from a remote location relative to the server, enters his/her verification code and a vehicle identifier to view and verify that the train manifest and track profile data for the associated has been updated. Then the data is transmitted from the server to an onboard operating system.

In another embodiment there is an operating system, onboard a powered vehicle, for controlling multiple operations of the powered vehicle. The operating system comprises a plurality of controllers onboard the powered vehicle for controlling multiple operations of the vehicle; a non-distributed memory in which data is stored, said data relating to operations and control of the powered vehicle; and a communication link between the controllers and the memory for the controllers to obtain the data from the memory and store the data in the memory. The non-distributed memory is the sole data storage in the powered system for long term storage of said data for the plurality of controllers.

In an operating system, onboard a locomotive, for controlling multiple operations of the locomotive, the operating system comprises a first controller for controlling a positive train control system of the locomotive; a second controller for controlling an operator coaching and/or operator interface system of the locomotive; a third controller for controlling a trip optimizer and/or fuel savings system of the locomotive; a memory in which locomotive operations data is stored for each of the positive train control system, the operator coaching and/or operator interface system, and the trip optimizer and/or fuel savings system. A communication link between the controllers and the memory for the controllers obtains the operations data from the memory and stores the operations data in the memory. In such an embodiment of an operating system, the memory may be a non-distributed memory; and, the non-distributed memory is the sole data storage in the locomotive for long term storage of said operations data for the plurality of controllers and the positive train control system, the operator coaching and/or operator interface system, and the trip optimizer and/or fuel savings system.

In another embodiment, a system (e.g., an operating system) includes a non-distributed memory and plural controllers. The non-distributed memory is configured to store data relating to one or more of operation or control of a vehicle. The controllers are configured to be communicatively coupled with the non-distributed memory, and to perform operations to control movement of the vehicle based on the data that is stored in the non-distributed memory. The controllers also are configured to obtain different respective sets of the data stored in the non-distributed memory to perform the respective operations of the controllers.

In another embodiment, a method (e.g., for controlling multiple operations of a propulsion-generating vehicle having an onboard operating system) includes storing data relating to one or more of operation or control of a vehicle in a non-distributed memory, obtaining a first set of the data from the non-distributed memory with a first controller, obtaining a second set of the data from the non-distributed memory with a different, second controller, controlling a first operation of the first controller to control movement of the vehicle using the first set of the data, and controlling a different, second operation of the second controller to control the movement of the vehicle using the second set of the data.

In another embodiment, a system (e.g., an operating system) includes plural controllers and a memory. The controllers are configured to be disposed onboard a rail vehicle for controlling multiple different operations of the rail vehicle. The memory is configured to be disposed onboard the vehicle and to store data shared by at least two of the controllers to perform the operations for the respective controllers. The controllers are configured to obtain different sets of the data stored in the memory and less than all of the data stored in the memory.

BRIEF DESCRIPTION OF THE DRAWINGS

The inventive subject matter descried herein can be more easily understood and the further advantages and uses thereof more readily apparent, when considered in view of the following detailed description when read in conjunction with the following figures, wherein:

FIG. 1 is a schematic illustration of an onboard operating system according to one embodiment;

FIG. 2 is a schematic illustration of an onboard operating system according to another embodiment; and

FIG. 3 illustrates a flow chart of one embodiment of a method for controlling multiple operations of a powered vehicle having an onboard operating system.

DETAILED DESCRIPTION

A more particular description of the inventive subject matter briefly described above will be rendered by reference to specific embodiments thereof that are illustrated in the appended drawings. Understanding that these drawings depict only some embodiments of the inventive subject matter and are not therefore to be considered to be limiting of the scope of the inventive subject matter, the inventive subject matter will be described and explained. While the inventive subject matter is described below in reference to locomotives and trains moving on a railroad track, not all embodiments of the inventive subject matter are so limited. The inventive subject matter may be used with other vehicles, such as marine vessels, off-highway vehicles other than rail vehicles (e.g., vehicles that are not designed and/or not permitted for travel on public roadways), automobiles, etc. The term “powered vehicle” as used herein shall comprise vehicles that are propulsion-generating vehicles and that optionally have an onboard power source sufficient to propel the vehicle and others in a series of vehicles. Alternatively, a powered vehicle may be powered from a source that is off-board the vehicle (e.g., an electrified catenary, electrified rail, utility grid, etc.). In the case of trains traveling on railroad tracks, the locomotive is the powered vehicle. The term “track” as used here shall comprise different pathways, such as off-road, off-highway, roads, marine pathways or railroad tracks traveled by powered vehicles. Alternatively, the term route may be used to describe the surface or surfaces on which the vehicles move.

Before describing in detail one embodiment of a particular method and apparatus for controlling of movement or operations of a powered vehicle in accordance with the inventive subject matter, it should be observed that at least one embodiment of the inventive subject matter can reside in a novel combination of hardware and software elements related to the method and apparatus. Accordingly, the hardware and software elements have been represented by conventional elements in the drawings, showing only those specific details that are pertinent to the inventive subject matter, so as not to obscure the disclosure with structural details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.

With respect to FIG. 1, there is schematically illustrated a vehicle system 10 including at least one propulsion-generating vehicle 11 and a plurality of non-propulsion-generating vehicles 12. The vehicle system 10 optionally can be referred to as a vehicle consist. The vehicle system 10 can represent a train, with the vehicle 11 representing a locomotive and the vehicles 12 representing railcars. While only a single vehicle 11 and two vehicles 12 are shown in FIG. 1, the vehicle system 10 may include multiple vehicles 11, a single vehicle 12, and/or more than two vehicles 12. The vehicles 11, 12 are shown in FIG. 1 as being mechanically coupled with each other, but optionally may be separated from each other. For example the vehicle system 10 may include two or more vehicles 11 that are separate from each other but that communicate with each other to coordinate movements with each other and travel along a route 15 as a group.

Alternatively, the vehicles 11, 12 may represent other types of vehicles. The propulsion-generating vehicle 11 includes an onboard operating system 13 comprising at least two controllers 14 (e.g., controllers 14A-D) that control certain functions of the vehicle 11. In the embodiment shown in FIG. 1, the operating system 13 includes four controllers 14A, 14B, 14C, and 14D. By way of example, controller 14A may be a tractive controller system that generates tractive effort commands and/or braking effort commands responsive to request of an operator 26 and/or under autonomous control; controller 14B may be an operating coaching system that assists an operator 26 in maintaining the operation of the propulsion-generating vehicle II within certain predetermined limits such as upper limit on tractive effort, an upper limit, on braking effort, an upper limit on a rate of acceleration, an upper limit on a rate of deceleration rate, a lower limit on the rate of acceleration, a lower limit on the rate of deceleration, speed limits, and/or operating sequences for bells and horns; controller 14C may be a fuel savings system that controls braking and propulsion operations to achieve fuel, emissions, and noise limits or goals; and controller 14D may be a traffic signal controller that receives and responds to off-board signals such as switching signals, light signals, cab signaling equipment, and speed restriction signals. The inventive subject matter described herein is intended to cover an onboard operating system of a propulsion-generating vehicle that includes plural controllers; and is not limited to the embodiment shown in FIG. 1 that includes four controllers. Each of the controllers 14A through 14D may include a memory 16 in which data is stored and used by a respective controller 14 to control certain operations of the vehicle 11 and/or vehicle system 10. Such data may include, for example, data relative to a route database (wherein, route refers to any designated route), a vehicle system manifest (or, more generally, a vehicle manifest), operating parameters of the vehicle system 10 and/or vehicle 11 (e.g., weight, size, length, rated horsepower output, or the like), and/or wayside traffic signal status.

The memory 16 may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (but a non-exhaustive list) of the different types of memory 16 would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a memory 16 may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

The route database may be stored in the memory 16, and can include grade data at various points of interest or locations along the route 15, route curvature data, civil speed limits and temporary speed restrictions, elevation of the route 15 at selected locations, locations of bridges and tunnels, the locations of wayside traffic control devices along the route 15, and the like. The vehicle manifest may include data relative to the identification of the propulsion-generating vehicle 11 and each of the non-propulsion-generating vehicles 12 in the vehicle system 10, the length and weight of the vehicle system 10, contents of the vehicles 12, or the like. Some vehicles 12 may contain materials (e.g., hazardous or flammable chemicals) that require special speed restrictions at selected locations along the route 15. So the vehicle manifest data may also have data relative to speed restrictions. Additionally or alternatively, such speed restriction and materials data may be stored in the route database.

The data in the route database can remain relatively constant with the exception of temporary speed restrictions, which may be updated as needed. In one embodiment, the route profile data in the route database may be entered directly in the onboard operating system 13 and controllers 14A through 14D from a single source, such as a railroad or track company. Alternatively or additionally, one or more vendors of the controllers 14A through 14D may obtain the route profile data from a railroad or track owner and enter the data. In as much as the vehicle manifest data may change from day to day, or from trip to trip, the vehicle manifest data may be provided at a dispatch center.

With respect to FIG. 2, there is schematically illustrated a system or method of transmitting data, such as track profile data and train manifest data, from an off-board memory to an onboard storage device. More specifically, such a system may provide for the wireless transmission or communication of data to be stored in a memory 24 onboard the propulsion-generating vehicle 11. The route profile data and/or vehicle manifest information can be stored on a first computer module/server 20 operated by entities that own the propulsion-generating vehicle 11 and vehicle systems 10, or that own the route system on the which the vehicle systems 10 travel. Alternatively, the server 20 may be operated by another entity. A second server 21 is provided and linked to the first server 20 and can be allowed limited or full access to the first server 20 in order to access the route profile data and route manifest data. The servers 20 and 21 may be linked via the Internet, local area networks, direct cable links, etc. The second server 21 may be located at the same station as the first server 20, or remotely located elsewhere at another business site, or could be located onboard the propulsion-generating vehicle 11. A communication modem 22 provides for the wireless transmission, via satellite, Wi-Fi, LAN, or other wireless data transmission capabilities.

The above-described data can be communicated via a signal 23 to the onboard operating system 13 of the propulsion-generating vehicle 11. A vehicle system operator 26 or other person that accesses a server 20 via a second server 21 may provide an access or verification code; or, one of the servers 20, 21 is configured to provide a verification of the user to allow access to the data fix transmission. (Thus, the system includes a verification access code associated with the vehicle or an operator 26 of the vehicle to access and transmit data from an off-board memory (the server) to the onboard operating system on the vehicle.) In the embodiment shown in FIG. 2, the data transmitted may be stored in a central or non-distributed database 24, and each of the controllers 14 can access the database 24 to obtain the information necessary for the operation of a respective controller.

Providing the data for the multiple controllers 14 in the database 24 can provide fix a single location for the controllers 14 to obtain the data that is used by the controllers 14 to perform the operations of the respective controllers 14, The database 24 may store more data than is needed or used by any single controller 14 to perform all or substantially all operations of the controller 14. The controllers 14 can access the database 24 as needed to obtain only the data that is used by the respective controller 14, and not extra data. For example, the database 24 may store route grades, speed limits along the route 15, elevations or altitudes of the route 15, locations of insulated joints in the route 15, locations of damaged sections of the route 15, locations of occupied sections of the route 15, weather information, crew information (e.g., identities of the operators 26 onboard the vehicle system 10), schedule information (e.g., scheduled times and/or locations for the vehicle system 10 and/or other vehicle systems 10), vehicle identifiers of the vehicles 11, 12, locations of intersections of the route 15 with other routes, locations of switches in the route 15, or the like. Different controllers 14 may obtain different sets of data from the database 24. For example, a first controller 14A can obtain a first set of data and a second controller 14B can include a second set of data that does not overlap with (e.g., does not include any of the same data as) the first set of data obtained by the first controller 14A.

Different controllers 14 communicate with the database 24 to obtain the data needed by the controllers 14. For example, a first controller 14A may be an energy management system having one or more processors that generate trip plans for the vehicle system 10. The trip plans may dictate operational settings of the vehicle system 10 as a function of time and/or distance along the route 15. These operational settings can include throttle settings, brake settings, speeds, accelerations, or the like. Traveling according to a trip plan may cause the vehicle system 10 to consume less fuel and/or generate fewer emissions than traveling according to other operational settings, A second controller 14B may be a route inspection system having one or more processors that inspect the route 15 for damage as the vehicle system 10 moves along the route 15. For example, the second controller 14B may examine electrical signals conducted through rails of the route 15, ultrasound echoes off the route 15, video data of the route 15, or the like, to identify potentially damaged sections of the route 15. The energy management system controller 14A may access the database 24 to obtain data such as route grades, speed limits, elevations or altitudes, intersection locations, switch locations, and the like, but may not obtain other data such as insulated joint locations, damaged section locations, occupied section locations, weather information, crew information, schedule information, vehicle identifiers, or the like. The route inspection system controller 14B, on the other hand, may access the database 24 to obtain data such as insulated joint locations, damaged section locations, switch locations, or the like, but not other information. Other controllers 14 may obtain other data that is the same as or different from other controllers 14. For example, two or more controllers 14 may obtain some of the same data from the database 24, while one or more other controllers 14 may not obtain any of the same data from the database 24 as other controllers 14.

Providing a central or single database 24 for multiple controllers 14 to obtain data used to perform operations of the controllers 14 can ensure that the data being used by the controllers 14 is consistent across the controllers 14. In contrast, separate memories or databases storing different versions of the same data run the risk of two controllers 14 obtaining and using different values for the same data. For example, separate memories may store different values for route grades, insulated joint locations, or the like. Depending on Which memory is accessed by the controllers 14, two or more controllers 14 may obtain different values of the same data (e.g., different route grades at the same location). The central or single database 24 can avoid this problem as multiple controllers 14 obtaining the same data will receive the same value for the data because the data value is coming from a single location. Consequently, the same data obtained and used by different controllers 14 is consistent among and between the controllers 14.

In one aspect, multiple, different controllers 14 may access the database 24 for different sets of data. The controllers 14 may access less than all of the data stored in the database 24. In one embodiment, one or more, or all, of the controllers 14 never access all of the data stored in the database 24.

With respect to the embodiment as shown in FIG. 1, the transmitted data may be stored in the respective controllers 14A through 14D. More specifically, the data may be parceled so that data used by one or more of the controllers 14A through 14D is stored in memory 16 or a data storage device for the controllers 14A-14D. For example, the controller 14A may utilize route grade data more frequently than the other controllers 14B-14D, so the route grade data can be stored in the memory 16 of the controller 14A.

Data other than the route profile data and the vehicle manifest information may be used with the disclosed system. Such data may include data that is acquired or stored during operation of the vehicle system 10 and/or data acquired while the vehicle system 10 is traveling on the route 15. For example, data relative to vehicle and/or vehicle system operating conditions (altitude, position, ambient pressure, temperatures, dynamic braking information, horsepower, etc.), vehicle and/or vehicle system health, health of operating components on the propulsion-generating vehicle or non-propulsion-generating vehicles, or wayside/signal information is stored during the operation of the propulsion-generating vehicle 11 and vehicle system 10. Data relative to the location of the propulsion-generating vehicle 11 on the route 15 may be received via a location-determining device 28, such as a global positioning system (GPS) transceiver or receiver, a wireless antenna, or the like. This information may be stored in one or more of the controllers 14A through 14D. The data may be grouped and stored, or discrete data elements/pieces may be stored in a memory 16 of a respective controller 14A through 14D that uses the data the most often or more often than one or more other controllers 14. For example, the data relative to health of the propulsion-generating vehicle 11 or components of the vehicle 11 may be stored in the memory 16 of a diagnostics controller.

The operating system 13 and controllers 14A through 14D may be configured to communicate or share data stored in the respective memories 16 through a local area network (LAN) system that incorporates Ethernet, Wi-Fi, or similar technologies. In an embodiment shown in FIG. 1, a communication link 25 (which may also be an integrated component of one of the controllers 14A-14D) is provided between controllers 14A and 14D which may provide a direct link between any two or more controllers for sharing data stored in the memories 16 in the respective controllers 14A and 14D. If more than two controllers 14 are used, then one or more, or all, of the controllers 14A-14D may be configured to know what data is stored at which controller. For example, a controller may be programmed to include data relative to the identity of other controllers in the operating system and the type of data stored in the memory 16 of the respective controllers.

In the embodiment shown in FIG. 1 the communication link 25 may include a communication router that is programmed to direct commands or requests for data from each controller to the appropriate controller memory 16 that has the requested stored data. The router 25 can be programmed to identify the controller 14A-14D and respective memory 16 upon request. The controllers 14A-14D can share route profile data and vehicle manifest data, which data may be the same for each controller. Moreover, the data can include the most recent updates that are shared among the controllers 14A-14D. With respect to the non-distributed memory (e.g., database 24) shown in FIG. 2, the memory can receive updates to the data stored therein such that all controllers 14 obtaining data from the memory receive the updated memory, without the updates to the data being previously communicated to the controllers 14.

FIG. 3 is a flowchart illustrating one embodiment of a method for controlling multiple operations of a propulsion-generating vehicle having an onboard operating system. At 30, an operator 26 or some other authorized individual may access the station server 20 by entering a verification access code that allows the operator 26 to access the server 20 from the propulsion-generating vehicle 11. The operator 26 may also provide a vehicle identifier so the server 20 may access the route profile data and vehicle manifest data associated with the vehicle identifier. The data is transmitted to the onboard operating system 13. At 32, the operator 26 may review portions of the data, such as the propulsion-generating vehicle 11 identifier, the route sections, some of the identifiers of the non-propulsion-generating vehicles 12, and/or a date at which the data was last updated, to verify that the vehicle manifest data and route profile data is current, At 34 and 36, once the operator 26 has verified that the data is up to date, the data is communicated from station server 20 to the onboard operating system 13. During operation of the propulsion-generating vehicle 11, and at 38 and 40, controllers are able to communicate via a wireless network, by identifying a controller 14A-14D and portions of data needed to transmit the updated data between controllers 14A-14D.

Embodiments of the inventive subject matter may include a computer readable memory media for controlling operations a propulsion-generating vehicle, such as a locomotive, that includes an onboard operating system comprising a plurality of controllers onboard the vehicle for controlling operations of the vehicle. A computer module can be provided for storing data relating to the operations of the vehicle, and may be accessible and used by at least two of the controllers for controlling vehicle operations. Additionally, a computer module can communicate data between the at least two controllers to control operations of the vehicle. The computer readable memory media may also comprise a computer module for identifying a controller and pieces of data stored in the memory of the controller and a computer module for transmitting the pieces of data from the identified controller to requesting controller.

The computer readable memory media may be used in conjunction with the operation of a locomotive and train and includes a computer module for storing data including train manifest data and/or a track database. The track database includes track profile data in a data storage device disposed off-board the locomotive and a computer module communicates at least a portion of the data to the operating system onboard the vehicle for storage. A computer module may be provided for entering an access verification code to access data stored in the off board data storage device and the data is transmitted data to the operating system onboard the powered vehicle upon request. Additionally, a computer module accesses manifest and track profile data associated with a locomotive 11 responsive to entry of the locomotive identifier.

Embodiments described above may be implemented on a suitable computer system, controller, data, or generally a computer readable medium. For example, operations of the methods described above may correspond to computer instructions, logic, software code, or other computer modules disposed on the computer readable medium, e.g., floppy disc, hard drive, ASIC, remote storage, optical disc, or the like. The computer-implemented methods and/or computer code may be programmed into an electronic control unit of an engine, a main control system of the locomotive, a remote control station that communicates with the vehicle or vehicle system, or the like, as described above.

Another embodiment relates to an operating system, onboard a vehicle, for controlling multiple operations of the vehicle. In this embodiment, the operating system comprises a plurality of controllers onboard the vehicle for controlling multiple operations of the vehicle. The system also comprises a non-distributed memory in which data is stored. The data relates to operations and control of the vehicle. The system also includes a communication link between the controllers and the memory for the controllers to obtain the data from the memory and store the data in the memory (e.g., read/write operations). The non-distributed memory may be the sole data storage in the vehicle system for long term storage of the data for the plurality of controllers. “Non-distributed” memory refers to a memory that is logically contained within a single system entity, such as a stand-alone database, computer, or memory unit, “Long term” storage refers to non-temporary or non-transitory data storage, such as in a hard disk, flash storage, or other non-volatile memory, as opposed to cache or other processor memory or local data storage that temporarily stores data for processing purposes. Thus, as should be appreciated, the non-distributed memory of this embodiment can, in effect, include a sole and centralized database, accessible for data retrieval and storage by the plural controllers, for storing operations and control data in the powered vehicle for the controllers. (This embodiment does not preclude an additional stand-alone processor and associated long-term memory for the stand-alone processor; however, the non-distributed memory of the above-described embodiment is the sole long-term data storage for the plurality of controllers connected to the non-distributed memory through the communication link.)

In another embodiment, the non-distributed memory can be the sole data storage in the vehicle for the long term storage of data for each and every controller in the vehicle. Thus, the vehicle can include a plurality of controllers, wherein the plurality of controllers comprises each and every controller in the powered vehicle, which are connected to the non-distributed memory by way of a communication link.

Another embodiment relates to an operating system, onboard a propulsion-generating vehicle such as a locomotive, for controlling multiple operations of the vehicle. The operating system comprises a first controller for controlling a positive train control (PIC) system of the vehicle. Such a PTC system can limit operation of the vehicle based on locations of the vehicle. For example, the PTC system can automatically stop movement of the vehicle to prevent the vehicle from entering into a restricted area. The operating system also comprises a second controller for controlling an operator coaching and/or operator interface system of the locomotive. Such a controller can provide prompts to the operator 26 to instruct the operator how to change operational settings of the vehicle 11 throttle settings, brake settings, speeds, accelerations, or the like). The operating system can further comprise a third controller for controlling an energy management system of the vehicle. The energy management system can include one or more processors that generate trip plans for trips of the vehicle. The trip plans can dictate operational settings of the vehicle as a function of time and/or distance along a route of the trip. The operational settings may be designated such that traveling along the route according to the trip plan causes the vehicle or vehicle system to consume less fuel and/or generate fewer emissions than traveling along the same route for the same trip, but using different operational settings. The operating system can still further comprise a memory and a communication link. Vehicle operations data can he stored in the memory for the PTC system, the operator coaching and/or operator interface system, and the energy management system. The communication link is between the controllers and the memory, and allows the controllers to obtain the operations data from the memory and store the operations data in the memory.

In another embodiment, the memory is a non-distributed memory. Additionally, the non-distributed memory is the sole data storage in the locomotive for long terra storage of the operations data for the plurality of controllers and the PTC system, the operator coaching and/or operator interface system, and the energy management system.

In another embodiment, a system (e.g., an operating system) includes a non-distributed memory and plural controllers. The non-distributed memory is configured to store data relating to one or more of operation or control of a vehicle. The controllers are configured to be communicatively coupled with the non-distributed memory, and to perform operations to control movement of the vehicle based on the data that is stored in the non-distributed memory. The controllers also are configured to obtain different respective sets of the data stored in the non-distributed memory to perform the respective operations of the controllers.

In one aspect, the controllers can be configured to obtain the different respective sets of the data as different, non-overlapping sets of the data.

In one aspect, the non-distributed memory can be configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that two or more of the controllers obtaining a common subset of the data receive common values of the data.

In one aspect, the non-distributed memory can be configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.

In one aspect, the controllers are not configured to obtain the one or more updates to the data prior to obtaining the data that is updated from the non-distributed memory.

In one aspect, the non-distributed memory can be configured to store a greater amount of the data than is Obtained by any single controller of the controllers to perform the respective operation of the single controller.

In one aspect, the non-distributed memory can be configured to be disposed onboard the vehicle.

In one aspect, the non-distributed memory can be configured to store two or more of route grades of a route, speed limits, route elevations, insulated joint locations in the route, damaged section locations of the route, occupied locations of the route, weather information, vehicle crew information, vehicle schedule information, vehicle identifiers, intersection locations along the route, and/or switch locations along the route as the data. The controllers can include two or more of an energy management system controller that is configured to obtain a first set of the data from the non-distributed memory to determine a trip plan for a trip of the vehicle that designates operational settings of the vehicle as a function of one or more of time and/or distance, a route inspection system controller that is configured to obtain a second set of the data from the non-distributed memory to inspect the route for damage, and/or a controller of a positive train control system of the vehicle that is configured to obtain a third set of the data from the non-distributed memory to limit the movement of the vehicle based on a location of the vehicle.

In one aspect, the first set of the data, the second set of the data, and the third set of the data are different, non-overlapping sets of the data stored in the non-distributed memory.

In another embodiment, a method (e.g., for controlling multiple operations of a propulsion-generating vehicle having an onboard operating system) includes storing data relating to one or more of operation or control of a vehicle in a non-distributed memory, obtaining a first set of the data from the non-distributed memory with a first controller, obtaining a second set of the data from the non-distributed memory with a different, second controller, controlling a first operation of the first controller to control movement of the vehicle using the first set of the data, and controlling a different, second operation of the second controller to control the movement of the vehicle using the second set of the data.

In one aspect, the first set of the data that is obtained by the first controller and the second set of the data that is obtained by the second controller can be different, non-overlapping sets of the data.

In one aspect, the method also can include receiving one or more updates to the data at the non-distributed memory subsequent to the first and second controllers obtaining the respective first and second sets of the data such that two or more of the controllers obtaining a common subset of the data receive common values of the data.

In one aspect, the method also can include receiving one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.

In one aspect, storing the data can include storing a greater amount of the data than is obtained by any single controller of the controllers to perform the respective operation of the single controller.

In one aspect, obtaining the first set of data and obtaining the second set of the data can include obtaining the first and second sets of data from the non-distributed memory that is disposed onboard the vehicle.

In one aspect, storing the data can include storing two or more of route grades of a route, speed limits, route elevations, insulated joint locations in the route, damaged section locations of the route, occupied locations of the route, weather information, vehicle crew information, vehicle schedule information, vehicle identifiers, intersection locations along the route, and/or switch locations along the route as the data. Controlling the first operation of the first controller and controlling the second operation of the second controller can include two or more of determining a trip plan for a trip of the vehicle that designates operational settings of the vehicle as a function of one or more of time or distance, inspecting the route for damage, and/or limiting the movement of the vehicle based on a location of the vehicle.

In one aspect, the first set of the data and the second set of the data can include different, non-overlapping sets of the data stored in the non-distributed memory.

In another embodiment, a system (e.g., an operating system) includes plural controllers and a memory. The controllers are configured to he disposed onboard a rail vehicle for controlling multiple different operations of the rail vehicle. The memory is configured to be disposed onboard the vehicle and to store data shared by at least two of the controllers to perform the operations for the respective controllers. The controllers are configured to obtain different sets of the data stored in the memory and less than all of the data stored in the memory.

In one aspect, the memory can be configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.

In one aspect, the controllers are not configured to obtain the one or more updates to the data prior to obtaining the data that is updated from the non-distributed memory.

While various embodiments of the inventive subject matter have been shown and described herein, it will be obvious that such embodiments are provided by way of example only and not of limitation. Numerous variations, changes, and substitutions will occur to those of ordinary skill in the art without departing from the teaching of the inventive subject matter. Accordingly, it is intended that the inventive subject matter be interpreted within the full spirit and scope of the appended claims. 

What is claimed is:
 1. A system comprising: a non-distributed memory configured to store data relating to one or more of operation or control of a vehicle; and plural controllers configured to be communicatively coupled with the non-distributed memory, the controllers configured to perform operations to control movement of the vehicle based on the data that is stored in the non-distributed memory, wherein the controllers are configured to obtain different respective sets of the data stored in the non-distributed memory to perform the respective operations of the controllers.
 2. The system of claim 1, wherein the controllers are configured to obtain the different respective sets of the data as different, non-overlapping sets of the data.
 3. The system of claim 1, wherein the non-distributed memory is configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that two or more of the controllers obtaining a common subset of the data receive common values of the data.
 4. The system of claim 1, wherein the non-distributed memory is configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.
 5. The system of claim 4, wherein the controllers are not configured to obtain the one or more updates to the data prior to obtaining the data that is updated from the non-distributed memory.
 6. The system of claim 1, wherein the non-distributed memory is configured to store a greater amount of the data than is obtained by any single controller of the controllers to perform the respective operation of the single controller.
 7. The system of claim 1, wherein the non-distributed memory is configured to be disposed onboard the vehicle.
 8. The system of claim 1, wherein the non-distributed memory is configured to store two or more of route grades of a route, speed limits, route elevations, insulated joint locations in the route, damaged section locations of the route, occupied locations of the route, weather information, vehicle crew information, vehicle schedule information, vehicle identifiers, intersection locations along the route, or switch locations along the route as the data, and wherein the controllers include two or more of an energy management system controller that is configured to obtain a first set of the data from the non-distributed memory to determine a trip plan for a trip of the vehicle that designates operational settings of the vehicle as a function of one or more of time or distance, a route inspection system controller that is configured to obtain a second set of the data from the non-distributed memory to inspect the route for damage, or a controller of a positive train control system of the vehicle that is configured to obtain a third set of the data from the non-distributed memory to limit the movement of the vehicle based on a location of the vehicle.
 9. The system of claim 8, wherein the first set of the data, the second set of the data, and the third set of the data are different, non-overlapping sets of the data stored in the non-distributed memory.
 10. A method comprising: storing data relating to one or more of operation or control of a vehicle in a non-distributed memory; obtaining a first set of the data from the non-distributed memory with a first controller; obtaining a second set of the data from the non-distributed memory with a different, second controller; controlling a first operation of the first controller to control movement of the vehicle using the first set of the data; and controlling a different, second operation of the second controller to control the movement of the vehicle using the second set of the data.
 11. The method of claim 10, wherein the first set of the data that is obtained by the first controller and the second set of the data that is obtained by the second controller are different, non-overlapping sets of the data.
 12. The method of claim 10, further comprising receiving one or more updates to the data at the non-distributed memory subsequent to the first and second controllers obtaining the respective first and second sets of the data such that two or more of the controllers obtaining a common subset of the data receive common values of the data.
 13. The method of claim 10, further comprising receiving one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.
 14. The method of claim 10, wherein storing the data includes storing a greater amount of the data than is obtained by any single controller of the controllers to perform the respective operation of the single controller.
 15. The method of claim 10, wherein obtaining the first set of data and obtaining the second set of the data includes obtaining the first and second sets of data from the non-distributed memory that is disposed onboard the vehicle.
 16. The method of claim 10, wherein storing the data includes storing two or more of route grades of a route, speed limits, route elevations, insulated joint locations in the route, damaged section locations of the route, occupied locations of the route, weather information, vehicle crew information, vehicle schedule information, vehicle identifiers, intersection locations along the route, or switch locations along the route as the data, and wherein controlling the first operation of the first controller and controlling the second operation of the second controller includes two or more of determining a trip plan for a trip of the vehicle that designates operational settings of the vehicle as a function of one or more of time or distance, inspecting the route for damage, or limiting the movement of the vehicle based on a location of the vehicle.
 17. The method of claim 16, wherein the first set of the data and the second set of the data are different, non-overlapping sets of the data stored in the non-distributed memory.
 18. A system comprising: plural controllers configured to be disposed onboard a rail vehicle for controlling multiple different operations of the rail vehicle; and a memory configured to be disposed onboard the vehicle and to store data shared by at least two of the controllers to perform the operations for the respective controllers, wherein the controllers are configured to obtain different sets of the data stored in the memory and less than all of the data stored in the memory.
 19. The system of claim 18, wherein the memory is configured to receive one or more updates to the data subsequent to the controllers obtaining the different respective sets of the data such that the data that is obtained by the controllers is consistent among the controllers.
 20. The system of claim 19, wherein the controllers are not configured to obtain the one or more updates to the data prior to obtaining the data that is updated from the non-distributed memory. 